1. Field of the Invention
The present invention relates to telecommunication systems and, particularly, to an improved system and method for using multiple gateways in a telephony-over-LAN (ToL) system.
2. Description of the Related Art
The International Telecommunications Union (ITU) Recommendation H.323 describes a set of devices and protocols for multimedia communication over packet-switched networks (such as local area networks). The four main components defined by the Recommendation are clients, multipoint control units, gateways, and gatekeepers. H.323 endpoints include clients or terminals, and gateways. Multipoint control units are used for supervising calls involving multiple parties. Gatekeepers are used for performing switching and call management functions, and gateways are used for routing calls from the LAN to other networks, such as the public switched telephone network (PSTN).
Gateways and gatekeepers in modern telephony-over-LAN (ToL) systems, such as those described by the H.323 Recommendation, are often poorly synchronized when placing outgoing calls. A gatekeeper that wants to establish a call outside the ToL system conventionally sends a call request to the gateway to place the call. Since gateways are often limited in capacity, multiple gateways are often used. Conventionally, the gatekeeper tries to place a call on each gateway in turn with polling. If the gateway has an available line, the gateway responds affirmatively and makes the call. If not, the gateway responds negatively and the gatekeeper tries the next gateway. Under heavy load, the gatekeeper might try to place the call with multiple gateways before it finds one with an available line.
Conventional ToL systems are thus disadvantageous in that multiple attempts by the gatekeeper may be needed before a call is completed. Thus, conventional ToL systems can undesirably load the system with communications between the gatekeeper and the gateways.
These and other drawbacks in the prior art are overcome in large part by a system and method according to the present invention. Briefly, the present invention allows gatekeepers to multicast commands to all gateways in the system. The gateways listen for one of their peer gateways to accept. If one accepts, then the other gateways ignore the pending call request. The gatekeeper making the request can specify an order in which the gateways are to respond to its request. The order may be based on a variety of factors, such as number of calls presently being handled by a particular gateway. Further, the gateways may be provided with timers to process a call request in the requested order if a gateway earlier in the queue fails to respond.
A gatekeeper according to an embodiment of the invention includes a multicast control unit for multicasting call setup commands for calls external to the network to a plurality of gateways. The multicast call request can also include a preferred order of response from the gateways. The order may be determined in a variety of ways. For example, the gatekeeper may monitor the number of calls being handled by each gateway and may specify that the least busy gateway is to attempt setup first.
A gateway according to an embodiment of the invention includes a monitoring unit for monitoring multicast call requests and the status of other gateways as a multicast call request is processed. The monitors may include timers which cause the gateway to begin processing the call if a gateway earlier in the queue has failed to respond. If a call has been picked up for processing by another gateway, other gateways halt and drop the call request.
Thus, the present invention advantageously allows a single call request to be placed on the gateway and minimizes the likelihood of a busy gateway while reducing LAN traffic caused by unnecessary polling.